// packageD/pages/poetry/poetry.js
import Toast from '../../../miniprogram_npm/@vant/weapp/toast/toast';
Page({

    /**
     * 页面的初始数据
     */
    data: {
        iptVal: '',
        searchRes: '',
        tips: ['静夜思', '饮酒', '登高', '声声慢', '出塞', '行路难', '锦瑟', '满江红'],
        showRes: false,
    },

    onChange(e) {
        this.setData({
            iptVal: e.detail,
        })
    },

    // 点击tips，选择热门搜索的内容
    onClickTips(e) {
        const { index } = e.currentTarget.dataset;
        const { tips } = this.data;
        this.setData({
            iptVal: tips[index],
        })
    },

    // 对返回的诗词内容进行过滤，以合适的格式显示到页面上
    useFilterPoetry(searchRes) {
        // 先找到各类型开始的下标
        const nameIndex = searchRes.indexOf('诗名：');
        const authorIndex = searchRes.indexOf('作者：');
        const textIndex = searchRes.indexOf('诗句：');
        const timeIndex = searchRes.indexOf('时间：');
        const name = searchRes.substring(nameIndex, authorIndex);
        const author = searchRes.substring(authorIndex, textIndex);
        const text = searchRes.substring(textIndex, timeIndex);
        this.setData({
            searchRes: {
                name,
                author,
                text
            }
        })
    },

    onClick() {
        const that = this;
        const { iptVal } = that.data;
        wx.showLoading({
            title: '诗词搜索中...',
        })
        wx.request({
            url: 'http://api.wpbom.com/api/ancien.php',
            data: {
                msg: iptVal,
                b: 1
            },
            success: (res) => {
                console.log(res);
                wx.hideLoading();
                if (res.statusCode === 200) {
                    that.setData({
                        showRes: true,
                    });
                    that.useFilterPoetry(res.data);
                } else {
                    Toast.fail('获取诗词失败')
                };
            }
        })
    },

    // 点击不满意，换源重新渲染
    onChangeRes() {
        const that = this;
        const { iptVal } = that.data;
        wx.showLoading({
            title: '诗词换源中...',
        })
        wx.request({
            url: 'http://api.wpbom.com/api/ancien.php',
            data: {
                msg: iptVal,
                b: Math.round(Math.random() * 10),
            },
            success: (res) => {
                console.log(res.data);
                wx.hideLoading();
                that.useFilterPoetry(res.data);
            }
        })
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {

    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})